The present invention relates in general to methods and apparatus for inhibiting the unauthorized copying or "pirating" of computer software. More specifically, the invention finds particular utility in inhibiting the unauthorized copying of the ROM-resident audio-visual display information of electronic video games.
Typically, electronic systems using microprocessors are manufactured with standard small scale or medium scale integration components and standard microprocessors. The system may be duplicated simply by copying the printed circuit board foil pattern and then installing on the copied boards the same standard components as used in the original system. Programmed ROM's are easily duplicated using inexpensive EPROM devices. Those of ordinary skill in the art will recognize that such copying of the system and program involves only the most rudimentary "reverse engineering" procedures. Such copying has been rampant in the coin-operated video game industry. Contraband games have resulted in enormous economic loss to the original game creators and to the authorized manufacturers as well as substantial and unnecessary legal expense in litigation to enjoin the unauthorized reproduction of the copyrighted games.
Copying of the above kind may be impeded by utilizing one or more custom integrated circuits of a type that are not readily duplicated or reverse engineered. A prospective copier would not likely be able to find an off-the-shelf replacement for such custom circuits. However, a modestly ingenious copier would most likely be able to replace the custom component with its functional equivalent by examining the microprocessor program and/or by exercising the custom hardware with a microprocessor emulator to determine its performance parameters.
An essential step in all unauthorized copying schemes is the ability to duplicate the microprocessor program either by dumping the program through use of a microprocessor emulator or by directly duplicating the ROM-resident software. Either of these alternatives is a comparatively simple procedure with state of the art electronic video games.